From f130ad19dbfb9e85fc6f3a72d09c74100a0fb552 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Tue, 23 Jul 2013 19:00:43 -0400 Subject: [PATCH] No need for configure to create etc/ and lisp/ any more * configure.ac (etc, lisp): No need to create specially. Configure already creates lisp when generating lisp/Makefile; src/Makefile now creates etc when needed. * src/Makefile.in ($(etc)/DOC, temacs$(EXEEXT)): Ensure etc/ exists. --- ChangeLog | 5 +++++ configure.ac | 7 ------- src/ChangeLog | 4 ++++ src/Makefile.in | 6 ++++++ 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 23c5693c0ce..69a5f92adff 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-07-23 Glenn Morris + + * configure.ac (etc, lisp): No need to create specially. + Configure already creates lisp, src/Makefile now creates etc. + 2013-07-23 Paul Eggert Port to GNU/Linux systems with tinfo but not ncurses. diff --git a/configure.ac b/configure.ac index f48822480e4..c58c283049c 100644 --- a/configure.ac +++ b/configure.ac @@ -4854,13 +4854,6 @@ SUBDIR_MAKEFILES_IN=`echo " ${SUBDIR_MAKEFILES}" | sed -e 's| | $(srcdir)/|g' -e AC_SUBST(SUBDIR_MAKEFILES_IN) -dnl Make the necessary directories, if they don't exist. -AC_CONFIG_COMMANDS([mkdirs], [ -for dir in etc lisp ; do - test -d ${dir} || mkdir ${dir} -done -]) - dnl You might wonder (I did) why epaths.h is generated by running make, dnl rather than just letting configure generate it from epaths.in. dnl One reason is that the various paths are not fully expanded (see above); diff --git a/src/ChangeLog b/src/ChangeLog index ceddd5df216..6329904e27e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2013-07-23 Glenn Morris + + * Makefile.in ($(etc)/DOC, temacs$(EXEEXT)): Ensure etc/ exists. + 2013-07-23 Paul Eggert Port to GNU/Linux systems with tinfo but not ncurses. diff --git a/src/Makefile.in b/src/Makefile.in index 066507580b4..65927ba236c 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -469,6 +469,7 @@ emacs$(EXEEXT): temacs$(EXEEXT) $(ADDSECTION) \ ## in the contents of the DOC file. ## $(etc)/DOC: $(libsrc)/make-docfile$(EXEEXT) $(obj) $(lisp) + $(MKDIR_P) $(etc) -rm -f $(etc)/DOC $(libsrc)/make-docfile -d $(srcdir) $(SOME_MACHINE_OBJECTS) $(obj) > $(etc)/DOC $(libsrc)/make-docfile -a $(etc)/DOC -d $(lispsource) `sed -n -e 's| \\\\||' -e 's|^[ ]*$$(lispsource)/||p' $(srcdir)/lisp.mk` @@ -497,10 +498,15 @@ $(ALLOBJS): globals.h $(lib)/libgnu.a: $(config_h) cd $(lib) && $(MAKE) libgnu.a +## We have to create $(etc) here because init_cmdargs tests its +## existence when setting Vinstallation_directory (FIXME?). +## This goes on to affect various things, and the emacs binary fails +## to start if Vinstallation_directory has the wrong value. temacs$(EXEEXT): stamp-oldxmenu $(ALLOBJS) \ $(lib)/libgnu.a $(EMACSRES) $(CC) $(ALL_CFLAGS) $(TEMACS_LDFLAGS) $(LDFLAGS) \ -o temacs $(ALLOBJS) $(lib)/libgnu.a $(W32_RES_LINK) $(LIBES) + $(MKDIR_P) $(etc) $(TEMACS_POST_LINK) test "$(CANNOT_DUMP)" = "yes" || \ test "X$(PAXCTL)" = X || $(PAXCTL) -r temacs$(EXEEXT) -- 2.30.2